<?php

namespace app\common\library;

/**
 * 视频处理相关的工具类
 */
class VideoToolkit
{
    public static function getFirstFrameFromVideo($videoUrl, $outputImagePath)
    {
        // 如果你只有URL，你可能需要先下载视频到本地
        // 你可以使用curl或file_get_contents等函数来下载视频
        // 这里我们使用视频的本地路径作为示例
        $localVideoPath = $videoUrl;
        // 使用FFmpeg命令提取第一帧
        // 注意：确保FFmpeg的路径是正确的
        $ffmpegPath = empty(config('video.ffmpeg_path')) ? 'ffmpeg' : config('video.ffmpeg_path'); // 根据你的服务器配置修改此路径
        $command = "{$ffmpegPath} -ss 00:00:01 -i {$localVideoPath} -vframes 1 {$outputImagePath} 2>&1";

        // 执行命令并保存输出（可选，用于调试）
        $output = shell_exec($command);
        // 检查命令是否成功执行
        if (file_exists($outputImagePath)) {
            return $outputImagePath;
        }
        return $output;
    }
}